package com.neudu.glsb.mapper;

import com.neudu.glsb.pojo.ProductIngredients;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import io.lettuce.core.dynamic.annotation.Param;

import java.util.List;
import java.util.Map;

/**
* @author Lenovo
* @description 针对表【product_ingredients(商品与材料的关联表，记录商品所需的原料及小料信息)】的数据库操作Mapper
* @createDate 2025-10-13 10:05:30
* @Entity com.neudu.glsb.pojo.ProductIngredients
*/
public interface ProductIngredientsMapper extends BaseMapper<ProductIngredients> {

    // 查询商品已关联的基础原料/包装材料
    List<Map<String, Object>> selectAssignedBasePackageMaterials(@Param("productId") Integer productId);

    // 查询可选的基础原料/包装材料（未关联该商品）
    List<Map<String, Object>> selectOptionalBasePackageMaterials(@Param("productId") Integer productId);

    // 批量保存商品-材料关联（含用量）
    int batchInsertProductMaterials(@Param("list") List<ProductIngredients> list);
}




